package cn.edu.seig.textbook.domain.pojo;

import cn.edu.seig.textbook.enums.OrderEnum;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;


import java.io.Serial;
import java.time.LocalDate;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import java.util.Date;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author day
 * @since 2024-11-07
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("tb_orders")
public class Orders implements Serializable {


    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 订购ID
     */
    @TableId(value = "order_id", type = IdType.AUTO)
    private Integer orderId;

    /**
     * 学生ID (外键)
     */
    @TableField("student_id")
    private Integer studentId;

    /**
     * 教材ID (外键)
     */
    @TableField("textbook_id")
    private Integer textbookId;

    /**
     * 订购状态
     */
    @TableField("order_status")
    private OrderEnum orderStatus;

    /**
     * 订购日期
     */
    @TableField("order_date")
    private Date orderDate;

    /**
     * 学生姓名
     */
    @TableField(exist = false) // 不会映射到数据库
    private String studentName;

    /**
     * 教材名
     */
    @TableField(exist = false) // 不会映射到数据库
    private String textbookName;
}
